home *** CD-ROM | disk | FTP | other *** search
/ SuperHack / SuperHack CD.bin / CODING / CPP / WFC010.ZIP / INCLUDE / CURL.HPP < prev    next >
C/C++ Source or Header  |  1995-12-07  |  2KB  |  87 lines

  1. #if ! defined ( URL_CLASS_HEADER )
  2.  
  3. /*
  4. ** Author: Samuel R. Blackburn
  5. ** CI$: 76300,326
  6. ** Internet: sammy@sed.csc.com
  7. **
  8. ** You can use it any way you like as long as you don't try to sell it.
  9. **
  10. ** Any attempt to sell WFC in source code form must have the permission
  11. ** of the original author. You can produce commercial executables with
  12. ** WFC but you can't sell WFC.
  13. **
  14. ** Copyright, 1995, Samuel R. Blackburn
  15. **
  16. ** $Workfile: $
  17. ** $Revision: $
  18. ** $Modtime: $
  19. */
  20.  
  21. #define URL_CLASS_HEADER
  22.  
  23. class CUniversalNamingConvention;
  24.  
  25. class CUniformResourceLocator : public CObject
  26. {
  27.    DECLARE_SERIAL( CUniformResourceLocator )
  28.  
  29.    public:
  30.  
  31.       CUniformResourceLocator();
  32.       CUniformResourceLocator( const CUniversalNamingConvention& source );
  33.       CUniformResourceLocator( const CUniformResourceLocator& source );
  34.       CUniformResourceLocator( LPCTSTR source );
  35.  
  36.       /*
  37.       ** Destructor should be virtual according to MSJ article in Sept 1992
  38.       ** "Do More with Less Code:..."
  39.       */
  40.  
  41.       virtual ~CUniformResourceLocator();
  42.  
  43.       /*
  44.       ** Parse stuff like:
  45.       ** telnet://www.microsoft.com:1234
  46.       ** socket://131.26.31.100:6000
  47.       ** http://www.microsoft.com/hello.html
  48.       */
  49.  
  50.       /*
  51.       ** Data
  52.       */
  53.  
  54.       CString ProtocolName;
  55.       CString MachineName;
  56.       CString PathName;
  57.       CString PortName;
  58.       CString URL;
  59.  
  60.       /*
  61.       ** Methods
  62.       */
  63.  
  64.       virtual int  Compare( const CUniformResourceLocator& source );
  65.       virtual void Copy( const CUniformResourceLocator& source );
  66.       virtual void Copy( const CUniversalNamingConvention& source );
  67.       virtual void Copy( LPCTSTR source );
  68.       virtual void Empty( void );
  69.       virtual void Make( void );
  70.       virtual void Serialize( CArchive& archive );
  71.  
  72.       virtual BOOL operator == ( const CUniformResourceLocator& right_url );
  73.       virtual CUniformResourceLocator& operator = ( const CUniversalNamingConvention& source );
  74.       virtual CUniformResourceLocator& operator = ( const CUniformResourceLocator& source );
  75.       virtual CUniformResourceLocator& operator = ( LPCTSTR source );
  76.  
  77.       operator LPCTSTR() { return( (LPCTSTR) URL ); }
  78.  
  79. #if defined( _DEBUG )
  80.  
  81.       virtual void Dump( CDumpContext& dump_context ) const;
  82.  
  83. #endif // _DEBUG
  84. };   
  85.  
  86. #endif // URL_CLASS_HEADER
  87.